#include<iostream>
#include<algorithm>
#include<functional>
#include<vector>
using namespace std;

int main() {
    vector<char> a(10),b(10);
    cout << a.empty() << "," << sizeof(a) << endl;
    cout << "a.max_size() = " << a.max_size() << ",a.capacity() = " << a.capacity()
        << ",a.size() = " << a.size() << endl;
    for(char c = 'a',i = 0;i < a.size() ; i++) {
        a[i] = c + i;
    }
    for (int i = 0; i < a.size(); i++) {
        cout << a[i] << " ";
    }
    cout << endl;
    copy(a.begin(),a.end(),b.begin());
    copy(b.begin(),b.end(),ostream_iterator<char>(cout," "));
    cout << endl;
    reverse_copy(b.begin(),b.end(),ostream_iterator<char>(cout," "));
    cout << endl;
    cout << "a.front() = " << a.front() << " a.back() = " << a.back()
        << " a.operator[](char,5)" << a.operator[](5) << endl;
    sort(b.begin(),b.end());
    copy(b.begin(),b.end(),ostream_iterator<char>(cout," "));
    cout << endl;
    return 0;
}
